/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model;

import java.util.ArrayList;
import java.util.List;
/**
 *
 * @author benoit
 */
public class Statistique {
    private int[][] Stat = new int[2][7];
    private Date dateDebut;
    private Date dateFin;

    public Statistique(Date dateDebut,Date dateFin) {
        this.dateDebut = dateDebut;
        this.dateFin = dateFin;
    }

    public int[][] getStat() {
        return Stat;
    }

    public void setStat(int[][] Stat) {
        this.Stat = Stat;
    }
       
    public void calculerStatistique(HistoriqueTrajet histoTrajet)
    {
        List<Trajet> listeTrajetASupprimer = new ArrayList<Trajet>();
        List<Trajet> listeTrajet;
        listeTrajet = histoTrajet.getTrajets();
        
        /* Recherche des trajets à supprimer */
        for(Trajet t : listeTrajet) {
            if( !(t.getHeureDemande().compareTo(dateDebut)>=0
                && t.getHeureDemande().compareTo(dateFin)<=0) ) {
                listeTrajetASupprimer.add(t);
            }
        }
        for(Trajet t : listeTrajetASupprimer) {
            listeTrajet.remove(t);
        }
        
        int index = 0, numAscenseur,i , j;
        
        for(i = 0 ; i < 2 ; i++)
        {
            {
                for(j = 0 ; j < 7 ; j++)
                {
                    Stat[i][j] = 0;
                }
            }
        }
                
        //Calcul des statistiques pour chaque scenseurs
        for(Trajet t: listeTrajet)
        {
            numAscenseur = t.getAscenseur();
            
            if(numAscenseur == 1)
            {
                Stat[0][0]++;
                Stat[0][6]++;
                Stat[1][0] = Stat[1][0] + t.getEnergieConsommee();
            }
            else if(numAscenseur == 2)
            {
                Stat[0][1]++;
                Stat[0][6]++;
                Stat[1][1] = Stat[1][1] + t.getEnergieConsommee();
            }
            else if(numAscenseur == 3)
            {
                Stat[0][2]++;
                Stat[0][6]++;
                Stat[1][2] = Stat[1][2] + t.getEnergieConsommee();
            }
            else if(numAscenseur == 4)
            {
                Stat[0][3]++;
                Stat[0][6]++;
                Stat[1][3] = Stat[1][3] + t.getEnergieConsommee();
            }
            else if(numAscenseur == 5)
            {
                Stat[0][4]++;
                Stat[0][6]++;
                Stat[1][4] = Stat[1][4] + t.getEnergieConsommee();
            }
            else
            {
                Stat[0][5]++;
                Stat[0][6]++;
                Stat[1][5] = Stat[1][5] + t.getEnergieConsommee();
            }
            
            index++;
        }
    }
}